<!DOCTYPE html>
<html>
	<head>
		<meta charset="UTF-8">
		<title></title>
		<meta name="viewport" content="width=device-width,initial-scale=1,minimum-scale=1,maximum-scale=1,user-scalable=no" />
	</head>
	<body>
		<h1>测试数组一些常用的方法</h1>
		<ol>
			<li>every方法,满足函数的所有条件,则返回true,否则返回false。<i>(引用的时候，函数不用加括号)。</i></li>
			<li>some方法，与上面的方法相反，只要有一个满足的，就能返回false，否则返回false。</li>
			<li>filter方法,筛选出符合规则的项,并且返回一个<i>(新的数组)</i>。</li>
			<li>flat方法，array.flat([depth])方法通过递归扁平属于数组的项直到一定深度来创建新数组。 depth可选参数默认为1。<i>会创建一个新的数组</i></li>
		</ol>
	</body>
	<script src="js/vconsole.min.js" type="text/javascript" charset="utf-8"></script>
	<script type="text/javascript">
		
		var vConsole = new VConsole();
		console.log('hello world');
		var arr1 = [0,2,4,6,8,10];
		var arr2 = [0,2,4,6,8,10,11];
		
//		every方法,满足函数的所有条件,则返回true,否则返回false。	

		function isEven(num){
			return num%2 === 0;
		}
		console.log(arr1.every(isEven));//这里需要注意的是，这个函数的调用不用添加括号
		console.log(arr2.every(isEven));
		
//		some方法,与上面的相反,只要有一个满足条件,那就是true,否则返回false
		
		function isOdd(num){
			return num%2 != 0;
		}
		console.log(arr1.some(isOdd));
		console.log(arr2.some(isOdd));
		
//		filter方法,筛选出符合规则的项,并且返回一个新的数组

		console.log(arr1.filter(isEven));
		console.log(arr2.filter(isOdd));
		
//		对数组进行扁平化操作
		var arr3 = [1,2,3,[9,4,[5],6],7,[8],[10]];
		console.log(arr3);
		console.log(arr3.flat(2));
		localStorage.client_id = 123;
		alert(localStorage.client_id);
	</script>
</html>
